package demo1229.lianxi1;


public class BaoziStore extends Thread {
    private BaoZi baoZi;

    public BaoziStore(BaoZi baoZi) {

        this.baoZi = baoZi;
    }

    @Override
    public void run() {
//        记录包子铺做了多少个包子
        int count = 0;
        while (true) {
            synchronized (baoZi) {

//            判断包子的状态 ,有包子
                if (baoZi.isExist()) {
                    try {
                        //老板等待顾客吃包子，此时顾客线程在做事情
                        baoZi.wait();
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                }
                //包子不存在,老板开始做包子
                System.out.println("老板开始做包子...");
                if (count % 3 == 1) {
                    baoZi.setPi("薄皮");
                    baoZi.setXian("麻辣豆腐");
                } else if (count % 3 == 2) {
                    baoZi.setPi("薄皮");
                    baoZi.setXian("鲜肉");
                } else {
                    baoZi.setPi("薄皮");
                    baoZi.setXian("牛肉粉丝");
                }
                //累计包子的个数
                count++;
//            把包子的状态设置为有包子.
                baoZi.setExist(true);
//            通知顾客线程可以吃包子
                baoZi.notify();
            }
        }
    }
}
